home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 045a / tpapi1.zip / NWDIR.PA1 < prev    next >
Text File  |  1991-12-04  |  10KB  |  160 lines

  1. {!R! FONT 15; FTMD 15; EXIT;}
  2.  
  3.  
  4. {***************************************************************************}
  5. {** Program : NWDIR                                                       **}
  6. {***************************************************************************}
  7. {** Version : 1.0b            ** Started : 11/11/91  ** ENDed :   /  /    **}
  8. {***************************************************************************}
  9. {******************************** Description ******************************}
  10. {***************************************************************************}
  11. {** OOP library for Netware API                                           **}
  12. {**                                                                       **}
  13. {** This unit forms the second level object : DIRECTORY                   **}
  14. {** This object is a descandent of          : NETWARE                     **}
  15. {**                                                                       **}
  16. {**                                                                       **}
  17. {**                                                                       **}
  18. {**                                                                       **}
  19. {***************************************************************************}
  20. {******************************** Information ******************************}
  21. {***************************************************************************}
  22. {**                                                                       **}
  23. {**                                                                       **}
  24. {**                                                                       **}
  25. {**                                                                       **}
  26. {** This code is (c) 1991 Tony Covelli,                                   **}
  27. {** Portions (c) Novell Inc,                                              **}
  28. {**                                                                       **}
  29. {**                                                                       **}
  30. {***************************************************************************}
  31.  
  32. {$I NETWARE.INC}
  33.  
  34. UNIT NWDIR;
  35.  
  36. INTERFACE
  37.  
  38. USES
  39.  
  40.   netware, nwvar;
  41.  
  42. TYPE
  43.  
  44.   pDirectoryOBJ = ^DirectoryOBJ;
  45.   DirectoryOBJ  = object (NetwareOBJ)
  46.  
  47.     constructor Init;
  48.  
  49.     FUNCTION    AddTrusteeToDirectory         (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  50.                                                ObjectID : OT_BinderyID; TrusteeRightsMask : BYTE) : WORD;
  51.  
  52.     FUNCTION    AllocPermanentDirectoryHandle (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  53.                                                DriveLetter : CHAR; VAR NewDirectoryHandle,
  54.                                                EffectiveRightsMask : BYTE)                   : WORD;
  55.  
  56.     FUNCTION    AllocTemporaryDirectoryHandle (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  57.                                                DriveLetter : CHAR; VAR NewDirectoryHandle,
  58.                                                EffectiveRightsMask : BYTE)                   : WORD;
  59.  
  60.     FUNCTION    ClearVolRestrictions          (ConnectionID : WORD; VolumeNumber : BYTE; ObjectID : OT_BinderyType) : WORD;
  61.  
  62.     FUNCTION    CreateDirectory               (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  63.                                                 MaximumRightsMask : BYTE)                                              : WORD;
  64.  
  65.     FUNCTION    DeallocateDirectoryHandle     (DirectoryHandle : BYTE) : WORD;
  66.  
  67.     FUNCTION    DeleteDirectory               (DirectoryHandle : BYTE; DirectoryPath : PathNameType) : WORD;
  68.  
  69.     FUNCTION    DeleteTrustee                 (ConnectionID : WORD; DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  70.                                                ObjectID : OT_BinderyID)                                                 : WORD;
  71.  
  72.     FUNCTION    DeleteTrusteeFromDirectory    (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  73.                                                ObjectID : OT_BinderyID) : WORD;
  74.  
  75.     FUNCTION    GetCurrentDirectory           (DriveNumber : BYTE; VAR DirectoryPath : PathNameType) : WORD;
  76.  
  77.     FUNCTION    GetDirectoryHandle            (DriveNumber : BYTE) : BYTE;
  78.  
  79.     FUNCTION    GetDirectoryPath              (DirectoryHandle : BYTE; VAR DirectoryPath : PathNameType) : WORD;
  80.  
  81.     FUNCTION    GetDirEntry                   (ConnectionID : WORD; DirectoryHandle : BYTE;
  82.                                                VAR DirectoryEntry : NWDir_Entry) : WORD;
  83.     FUNCTION    GetDirInfo                    (ConnectionID : WORD; DirectoryHandle : BYTE;
  84.                                                VAR DirectoryInfo : NWDir_Info) : WORD;
  85.  
  86.     FUNCTION    GetDriveInformation           (DriveNumber : BYTE; VAR ConnectionID : WORD; VAR DirectoryHandle : BYTE) : BYTE;
  87.  
  88.     FUNCTION    GetEffectiveDirectoryRights   (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  89.                                                VAR EffectiveRightsMask : BYTE) : WORD;
  90.  
  91.     FUNCTION    GetObjectDiskRestrictions     (ConnectionID : WORD; VolumeNumber : BYTE; ObjectID : OT_BinderyID;
  92.                                                VAR VolumeRestriction, BlocksInUse : LONGINT) : WORD;
  93.  
  94.     PROCEDURE   GetSearchDriveVector          (VAR VectorBuffer : Byte17ArrayType);
  95.  
  96.     FUNCTION    GetVolumeInformation          (ConnectionID : WORD; VolumeNumber : BYTE; StructureSize : WORD;
  97.                                                VAR VolumeStatistics : Volume_Stats) : WORD;
  98.  
  99.     FUNCTION    GetVolumeInfoWithHandle       (DirectoryHandle : BYTE; VAR VolumeName : VolumeNameType;
  100.                                                VAR TotalBlocks, SectorsPerBlock, AvailableBlocks,
  101.                                                TotalDirectorySlots, AvailableDirectorySlots,
  102.                                                VolumeIsRemovable : WORD) : WORD;
  103.  
  104.     FUNCTION    GetVolumeInfoWithNumber       (VolumeNumber : BYTE; VAR VolumeName : VolumeNameType;
  105.                                                VAR TotalBlocks, SectorsPerBlock, AvailableBlocks,
  106.                                                TotalDirectorySlots, AvailableDirectorySlots,
  107.                                                VolumeIsRemovable : WORD) : WORD;
  108.  
  109.     FUNCTION    GetVolumeName                 (VolumeNumber : BYTE; VAR VolumeName : VolumeNameType) : WORD;
  110.  
  111.     FUNCTION    GetVolumeNumber               (VolumeName : VolumeNameType; VAR VolumeNumber : BYTE) : WORD;
  112.  
  113.     FUNCTION    GetVolUsage                   (ConnectionID : WORD; VolumeNumber : BYTE;
  114.                                                VAR VolumeUsage : NWVol_Usage) : WORD;
  115.  
  116.     FUNCTION    IsSearchDrive                 (DriveLetter : CHAR) : WORD;
  117.  
  118.     FUNCTION    MapV2TrusteeRightsToV3        (TrusteeRights : BYTE) : LONGINT;
  119.  
  120.     FUNCTION    MapV3TrusteeRightsToV2        (TrusteeRights : LONGINT) : BYTE;
  121.  
  122.     FUNCTION    ModifyMaximumRightsMask       (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  123.                                                RevokeRightsMask, GrantRightsMask : BYTE) : WORD;
  124.  
  125.     FUNCTION    RenameDirectory               (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  126.                                                NewDirectoryName : DirectoryNameType) : WORD;
  127.  
  128.     FUNCTION    RestoreDirectoryHandle        (SaveBuffer : Byte14ArrayType; VAR NewDirectoryHandle,
  129.                                                EffectiveRightsMask : BYTE) : WORD;
  130.  
  131.     FUNCTION    SaveDirectoryHandle           (DirectoryHandle : BYTE; VAR SaveBuffer : Byte14ArrayType) : WORD;
  132.  
  133.     FUNCTION    ScanBinderyObjectTrusteePaths (ObjectID : OT_BinderyID; VolumeNumber : BYTE;
  134.                                                VAR SequenceNumber, TrusteeAccessMask : WORD;
  135.                                                VAR TrusteePathName : PathNameType) : WORD;
  136.  
  137.     FUNCTION    ScanDirectoryForTrustees      (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  138.                                                VAR SequenceNumber : WORD; VAR DirectoryName : DirectoryNameType;
  139.                                                VAR CreationDateAndTime : Byte4ArrayType; VAR OwnerID : OT_BinderyID;
  140.                                                VAR TrusteeIDs : Longint5ArrayType; VAR TrusteeRights : Byte5ArrayType) : WORD;
  141.  
  142.     FUNCTION    ScanDirectoryInformation      (DirectoryHandle : BYTE; SearchDirectoryPath : PathNameType;
  143.                                                VAR SequenceNumber : WORD; VAR DirectoryName : DirectoryNameType;
  144.                                                VAR CreationDateAndTime : Byte4ArrayType; VAR OwnerID : OT_BinderyID;
  145.                                                VAR MaximumRightsMask : BYTE) : WORD;
  146.  
  147.     FUNCTION    SetDirectoryHandle            (SourceDirectoryHandle : BYTE; SourceDirectoryPath : PathNameType;
  148.                                                TargetDirectoryHandle : BYTE) : WORD;
  149.  
  150.     FUNCTION    SetDirectoryInformation       (DirectoryHandle : BYTE; DirectoryPath : PathNameType;
  151.                                                NewCreationDateAndTime : Byte4ArrayType;
  152.                                                NewOwnerObjectID : OT_BinderyID; NewRightsMask : BYTE) : WORD;
  153.  
  154.     PROCEDURE   SetSearchDriveVector          (VAR VectorBuffer : Byte17ArrayType);
  155.  
  156.     destructor  Done; virtual;
  157.  
  158.   END;
  159.  
  160.